menuconfig NVMEM
	bool "NVMEM Support"
	help
	  Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES...

	  This framework is designed to provide a generic interface to NVMEM
	  from both the Linux Kernel and the userspace.

	  This driver can also be built as a module. If so, the module
	  will be called nvmem_core.

	  If unsure, say no.

if NVMEM

config NVMEM_SYSFS
	bool "/sys/bus/nvmem/devices/*/nvmem (sysfs interface)"
	depends on SYSFS
	default y
	help
	 Say Y here to add a sysfs interface for NVMEM.

	 This interface is mostly used by userspace applications to
	 read/write directly into nvmem.

config NVMEM_IMX_IIM
	tristate "i.MX IC Identification Module support"
	depends on ARCH_MXC || COMPILE_TEST
	help
	  This is a driver for the IC Identification Module (IIM) available on
	  i.MX SoCs, providing access to 4 Kbits of programmable
	  eFuses.

	  This driver can also be built as a module. If so, the module
	  will be called nvmem-imx-iim.

config NVMEM_IMX_OCOTP
	tristate "i.MX6 On-Chip OTP Controller support"
	depends on SOC_IMX6 || COMPILE_TEST
	depends on HAS_IOMEM
	help
	  This is a driver for the On-Chip OTP Controller (OCOTP) available on
	  i.MX6 SoCs, providing access to 4 Kbits of one-time programmable
	  eFuses.

	  This driver can also be built as a module. If so, the module
	  will be called nvmem-imx-ocotp.

config NVMEM_LPC18XX_EEPROM
	tristate "NXP LPC18XX EEPROM Memory Support"
	depends on ARCH_LPC18XX || COMPILE_TEST
	depends on HAS_IOMEM
	help
	  Say Y here to include support for NXP LPC18xx EEPROM memory found in
	  NXP LPC185x/3x and LPC435x/3x/2x/1x devices.
	  To compile this driver as a module, choose M here: the module
	  will be called nvmem_lpc18xx_eeprom.

config NVMEM_LPC18XX_OTP
	tristate "NXP LPC18XX OTP Memory Support"
	depends on ARCH_LPC18XX || COMPILE_TEST
	depends on HAS_IOMEM
	help
	  Say Y here to include support for NXP LPC18xx OTP memory found on
	  all LPC18xx and LPC43xx devices.
	  To compile this driver as a module, choose M here: the module
	  will be called nvmem_lpc18xx_otp.

config NVMEM_MXS_OCOTP
	tristate "Freescale MXS On-Chip OTP Memory Support"
	depends on ARCH_MXS || COMPILE_TEST
	depends on HAS_IOMEM
	help
	  If you say Y here, you will get readonly access to the
	  One Time Programmable memory pages that are stored
	  on the Freescale i.MX23/i.MX28 processor.

	  This driver can also be built as a module. If so, the module
	  will be called nvmem-mxs-ocotp.

config MTK_EFUSE
	tristate "Mediatek SoCs EFUSE support"
	depends on ARCH_MEDIATEK || COMPILE_TEST
	depends on HAS_IOMEM
	help
	  This is a driver to access hardware related data like sensor
	  calibration, HDMI impedance etc.

	  This driver can also be built as a module. If so, the module
	  will be called efuse-mtk.

config QCOM_QFPROM
	tristate "QCOM QFPROM Support"
	depends on ARCH_QCOM || COMPILE_TEST
	depends on HAS_IOMEM
	help
	  Say y here to enable QFPROM support. The QFPROM provides access
	  functions for QFPROM data to rest of the drivers via nvmem interface.

	  This driver can also be built as a module. If so, the module
	  will be called nvmem_qfprom.

config NVMEM_SPMI_SDAM
	tristate "SPMI SDAM Support"
	depends on SPMI
	help
	  This driver supports the Shared Direct Access Memory Module on
	  Qualcomm Technologies, Inc. PMICs. It provides the clients
	  an interface to read/write to the SDAM module's shared memory.

config ROCKCHIP_EFUSE
	tristate "Rockchip eFuse Support"
	depends on ARCH_ROCKCHIP || COMPILE_TEST
	depends on HAS_IOMEM
	help
	  This is a simple drive to dump specified values of Rockchip SoC
	  from eFuse, such as cpu-leakage.

	  This driver can also be built as a module. If so, the module
	  will be called nvmem_rockchip_efuse.

config NVMEM_BCM_OCOTP
	tristate "Broadcom On-Chip OTP Controller support"
	depends on ARCH_BCM_IPROC || COMPILE_TEST
	depends on HAS_IOMEM
	default ARCH_BCM_IPROC
	help
	  Say y here to enable read/write access to the Broadcom OTP
	  controller.

	  This driver can also be built as a module. If so, the module
	  will be called nvmem-bcm-ocotp.

config NVMEM_SUNXI_SID
	tristate "Allwinner SoCs SID support"
	depends on ARCH_SUNXI
	help
	  This is a driver for the 'security ID' available on various Allwinner
	  devices.

	  This driver can also be built as a module. If so, the module
	  will be called nvmem_sunxi_sid.

config UNIPHIER_EFUSE
	tristate "UniPhier SoCs eFuse support"
	depends on ARCH_UNIPHIER || COMPILE_TEST
	depends on HAS_IOMEM
	help
	  This is a simple driver to dump specified values of UniPhier SoC
	  from eFuse.

	  This driver can also be built as a module. If so, the module
	  will be called nvmem-uniphier-efuse.

config NVMEM_VF610_OCOTP
	tristate "VF610 SoC OCOTP support"
	depends on SOC_VF610 || COMPILE_TEST
	depends on HAS_IOMEM
	help
	  This is a driver for the 'OCOTP' peripheral available on Vybrid
	  devices like VF5xx and VF6xx.

	  This driver can also be build as a module. If so, the module will
	  be called nvmem-vf610-ocotp.

config MESON_EFUSE
	tristate "Amlogic Meson GX eFuse Support"
	depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM
	help
	  This is a driver to retrieve specific values from the eFuse found on
	  the Amlogic Meson GX SoCs.

	  This driver can also be built as a module. If so, the module
	  will be called nvmem_meson_efuse.

config MESON_MX_EFUSE
	tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support"
	depends on ARCH_MESON || COMPILE_TEST
	help
	  This is a driver to retrieve specific values from the eFuse found on
	  the Amlogic Meson6, Meson8 and Meson8b SoCs.

	  This driver can also be built as a module. If so, the module
	  will be called nvmem_meson_mx_efuse.

config NVMEM_SNVS_LPGPR
	tristate "Support for Low Power General Purpose Register"
	depends on SOC_IMX6 || SOC_IMX7D || COMPILE_TEST
	help
	  This is a driver for Low Power General Purpose Register (LPGPR) available on
	  i.MX6 and i.MX7 SoCs in Secure Non-Volatile Storage (SNVS) of this chip.

	  This driver can also be built as a module. If so, the module
	  will be called nvmem-snvs-lpgpr.

config RAVE_SP_EEPROM
	tristate "Rave SP EEPROM Support"
	depends on RAVE_SP_CORE
	help
	  Say y here to enable Rave SP EEPROM support.

config SC27XX_EFUSE
	tristate "Spreadtrum SC27XX eFuse Support"
	depends on MFD_SC27XX_PMIC || COMPILE_TEST
	depends on HAS_IOMEM
	help
	  This is a simple driver to dump specified values of Spreadtrum
	  SC27XX PMICs from eFuse.

	  This driver can also be built as a module. If so, the module
	  will be called nvmem-sc27xx-efuse.

endif
